
#pragma once

#include <Singleton.h>
#include <hgedistort.h>

enum GAME_STATE
{
	GAME_STATE_NONE=-1,
	GAME_STATE_BEGIN,
	GAME_STATE_RUN,
	GAME_STATE_MAX,
};

class gameMgr_t : public Singleton<gameMgr_t>
{
	friend class Singleton<gameMgr_t>;
private:
	gameMgr_t():curState(GAME_STATE_NONE),beginBackDis(NULL),nRows(16),nCols(16),t(0.0f){};
	~gameMgr_t(){};

public:
	void draw();
	void update();

private:
	void drawBeginBack();
	void updateBeginBack();

public:
	void setState(GAME_STATE state);

private:
	GAME_STATE curState;

	hgeDistortionMesh*	beginBackDis;
	float t;
	int nRows;
	int nCols;
};

#define gameMgr gameMgr_t::GetSingleton()